#include "Comm.hpp"

int main()
{
    //创建key
    key_t k = ftok(gpath.c_str(),gprojid);
    if(k < 0)//创建失败
    {
        cerr<<"ftok error"<<endl;
        return 1;
    }
    //让server创建共享内存&&获取
    int shmid = shmget(k,gshmsize,IPC_CREAT | IPC_EXCL);//创建
    if(shmid < 0)//创建失败
    {
        cerr<<"shmget error"<<endl;
        return 2;
    }
    cout<<"shmid: "<<shmid<<endl;
    cout<<"k:"<<k<<endl;
    sleep(5);

    //将共享内存挂接到自己的地址空间当中
    shmat(shmid,nullptr,0);//将共享内存挂接到自己的虚拟地址上。
    cout<<"attach done"<<endl;
    sleep(5);

    //删除共享内存
    int n = shmctl(shmid,IPC_RMID,nullptr);
    if(n < 0) return 3;
    cout<<"delete shm done"<<endl;
    sleep(5);
    return 0;
}